The cloud computing environment is an enhancement to the predecessor grid environment, whereby multiple grids and other computation resources may be further abstracted by a cloud layer, thus making disparate devices appear to an end-user as a single pool of seamless resources. These resources may include such things as physical or logical compute engines, servers and devices, device memory, storage devices.
Enterprise storage clouds are comprised of multiple layers of software and hardware components, all of which need to be correctly configured for proper functioning of the storage cloud service. For example, a Network Attached Storage (NAS)-based storage cloud is typically comprised of storage subsystems, inter-connection fabric (fiber channel, InfiniBand, Ethernet, etc.), storage nodes, interface nodes, file system, etc. System administrators have to rely on a litany of management tools to manage and configure these components individually and provision storage resources for end-users. Such independent management may be costly, error-prone and time-consuming and may either result in under-provisioning or suboptimal utilization of resources.